- 🙂 第一次练习 2020年4月5日 看的官方题解 (opens new window),感觉没怎么看懂,我丢。。。。懂了数组是升序的
- 😄 第二次练习
# 二分查找
解题代码
public int findMin(int[] nums) {
if (nums.length == 1)
return nums[0];
int l = 0, r = nums.length - 1;
if (nums[r] > nums[0])
return nums[0];
while(l <= r) {
int mid = l + ((r - l) >>> 1);
if (nums[mid] > nums[mid + 1])
return nums[mid + 1];
if (nums[mid - 1] > nums[mid])
return nums[mid];
if (nums[mid] > nums[0])
l = mid + 1;
else
r = mid - 1;
}
return -1;
}
# 易错点
- 易错项 1